package br.edu.udc.sistemas.ia5.dao;


public class DaoModelo extends Dao {

	public DaoModelo() throws Exception {
		super();
	}
//	public void save(Modelo modelo) {
//
//		DatabasePool database = DatabasePool.getInstance();
//		try {
//			Connection con = database.getConnection();
//			Statement stmt = con.createStatement();
//			String sql;
//			if (this.findByPrimaryKey(modelo) == null) {
//				sql = "insert into Modelo (descricao, idMarca) values ("
//						+ "'" + modelo.getDescricao() + "',"
//						+ modelo.getMarca().getIdMarca() + ")";
//				stmt.execute(sql, Statement.RETURN_GENERATED_KEYS);
//				ResultSet rst = stmt.getGeneratedKeys();
//				if (rst.next()) {
//					modelo.setIdModelo(rst.getInt(1));
//				}
//			} else {
//				sql = "update modelo set descricao = '" + modelo.getDescricao()
//						+ "', idMarca = " + modelo.getMarca().getIdMarca() + " where idModelo =" + modelo.getIdModelo();
//				stmt.execute(sql);
//			}
//			System.out.println(sql);
//			con.commit();
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//	}
//
//	public void delete(Modelo modelo) {
//		if ((modelo != null) && (modelo.getIdModelo() != null)){
//			DatabasePool database = DatabasePool.getInstance();	
//			try {
//				Connection con = database.getConnection();
//				Statement stmt = con.createStatement();
//				String sql = "delete from Modelo where idModelo = "+modelo.getIdModelo();
//				stmt.executeUpdate(sql);
//				con.commit();			
//			} catch (Exception e) {
//				e.printStackTrace();
//			}
//		}
//	}
//
//	public Modelo[] find(Modelo modelo) {		
//		try {
//			String sql = "select idModelo, descricao, idMarca from Modelo";
//			if (modelo != null) {
//				boolean bWhere = false;
//				if ( (modelo.getIdModelo() != null) && (modelo.getIdModelo() > 0) ) {
//					sql += " where idModelo = " + modelo.getIdModelo();
//					bWhere = true;
//				}
//				if ((modelo.getDescricao() != null)	&& (!modelo.getDescricao().equals(""))) {
//					if (bWhere) {
//						sql += " and";
//					} else {
//						sql += " where";
//						bWhere = true;
//					}
//					sql += " descricao like '%" + modelo.getDescricao() + "%'";					
//				}
//				if ((modelo.getMarca() != null)	&& (modelo.getMarca().getIdMarca() != null)) {
//					if (bWhere) {
//						sql += " and";
//					} else {
//						sql += " where";
//					}
//					sql += " idMarca = " + modelo.getMarca().getIdMarca();
//				}
//			}
//			System.out.println(sql);
//			DatabasePool database = DatabasePool.getInstance();	
//			Statement stmt = database.getConnection().createStatement();
//			ResultSet rst = stmt.executeQuery(sql);
//			Vector vetor = new Vector();
//			while (rst.next()) {
//				Modelo modeloAux = new Modelo();
//				modeloAux.setIdModelo(rst.getInt("idModelo"));
//				modeloAux.setDescricao(rst.getString("descricao"));
//				modeloAux.setMarca(new Marca());
//				modeloAux.getMarca().setIdMarca(rst.getInt("idMarca"));
//				vetor.add(modeloAux);
//			}
//			return (Modelo[]) vetor.toArray(new Modelo[vetor.size()]);
//		} catch (Exception e) {
//			// TODO: handle exception
//			e.printStackTrace();
//			return null;
//		}
//	}
//
//	public Modelo findByPrimaryKey(Modelo modelo) {
//		if ( ((modelo != null) && (modelo.getIdModelo() != null)) ){
//			Modelo modeloAux = new Modelo();
//			modeloAux.setIdModelo(modelo.getIdModelo());
//			Modelo lista[] = this.find(modeloAux);
//			if (lista.length > 0) {
//				return lista[0];
//			}
//		}
//		return null;
//	}
}
